package com.xinke.module.system.model.entity.sms;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import com.xinke.component.mybatis.mybatis.core.dataobject.BaseDO;

/**
 * 短信日志 DO
 *
 * @author yzx
 */
@TableName("system_sms_log")
@KeySequence("system_sms_log_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SmsLogDO extends BaseDO {

    /**
     * 编号
     */
    @TableId
    private Long logId;
    /**
     * 短信渠道编号
     */
    private Long channelId;
    /**
     * 短信渠道编码
     */
    private String channelCode;
    /**
     * 模板编号
     */
    private Long templateId;
    /**
     * 模板编码
     */
    private String templateCode;
    /**
     * 短信类型
     */
    private Integer templateType;
    /**
     * 短信内容
     */
    private String templateContent;
    /**
     * 短信参数
     */
    private String templateParams;
    /**
     * 短信 API 的模板编号
     */
    private String apiTemplateId;
    /**
     * 手机号
     */
    private String smsMobile;
    /**
     * 用户编号
     */
    private Long userId;
    /**
     * 用户类型
     */
    private Integer userType;
    /**
     * 发送状态
     */
    private Integer sendStatus;
    /**
     * 发送时间
     */
    private LocalDateTime sendTime;
    /**
     * 短信 API 发送结果的编码
     */
    private String apiSendCode;
    /**
     * 短信 API 发送失败的提示
     */
    private String apiSendMsg;
    /**
     * 短信 API 发送返回的唯一请求 ID
     */
    private String apiRequestId;
    /**
     * 短信 API 发送返回的序号
     */
    private String apiSerialNo;
    /**
     * 接收状态
     */
    private Integer receiveStatus;
    /**
     * 接收时间
     */
    private LocalDateTime receiveTime;
    /**
     * API 接收结果的编码
     */
    private String apiReceiveCode;
    /**
     * API 接收结果的说明
     */
    private String apiReceiveMsg;

}